package pe.cliente.proyecto.core.daobase;
import java.util.Date;
import java.util.List;

import pe.adra.core.dao.DAOUtil;
import pe.adra.core.ext.soporte.SuportEntidad;
import pe.adra.util.exception.DAOException;
import pe.cliente.proyecto.core.daobase.impl.EstadioDAOBaseImpl.EstadioDAOBaseUtil;
import pe.cliente.proyecto.dominio.Estadio;

public interface EstadioDAOBase{

	public static final String STR_ENTIDAD = "Estadio";
	public static final String CAMPO_ID= "id";
	public static final String CAMPO_NOMBRE= "nombre";
	public static final String UBIGEO_CAMPO_UBIGEO= "ubigeo";
	public static final String RESPONSABLE_CAMPO_RESPONSABLE= "responsable";
	public static final String CAMPO_CANTIDADASIENTOS= "cantidadAsientos";
	public static final String CAMPO_DIRECCION= "direccion";
	public static final String CAMPO_REFERENCIA= "referencia";
	public static final String CAMPO_FECHAREGISTRO= "fechaRegistro";
	public static final String CAMPO_FECHAACTUALIZADA= "fechaActualizada";
	public static final String CAMPO_ACTIVO= "activo";
	public static final String CAMPO_CODIGOUSUARIO= "codigoUsuario";

	
	public static final String SQL_QUERY = DAOUtil.SQL_SELECT + DAOUtil.SQL_SE + DAOUtil.SQL_FROM + STR_ENTIDAD + DAOUtil.SQL_SE;
	public static final String SQL_QUERY_COUNT = DAOUtil.SQL_SELECT + DAOUtil.SQL_COUNT + "(" + DAOUtil.SQL_SE + ")" + DAOUtil.SQL_FROM + STR_ENTIDAD + DAOUtil.SQL_SE;

	public static final String SQL_QUERY_CBO =   DAOUtil.SQL_SELECT + DAOUtil.SQL_SEA + CAMPO_ID + "," + DAOUtil.SQL_SEA + CAMPO_NOMBRE + DAOUtil.SQL_FROM + STR_ENTIDAD + DAOUtil.SQL_SE;

	
	public int countListaEstadio( Estadio filtro ) throws DAOException;
	public int countListaEstadio( Estadio filtro, Date finit, Date ffin ) throws DAOException;
	public List<Estadio> getListaEstadio( Estadio filtro, int inicio, int fin, String strSort, String strOrder, SuportEntidad... innerjoin ) throws DAOException;
	public List<Estadio> getListaEstadio( Estadio filtro, Date finit, Date ffin, int inicio, int fin, String strSort, String strOrder, SuportEntidad... innerjoin ) throws DAOException;

	public List<Estadio> getCboEstadio() throws DAOException;
	public List<Estadio> getCboEstadio( Estadio filtro ) throws DAOException;
	public List<Estadio> getEstadioPorID( Integer[] ids , String tipo , SuportEntidad innerjoin ) throws DAOException;
	public EstadioDAOBaseUtil setQuery();

}
